Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.01.2015, 14:31
Профессор
Отправить личное сообщение для hoax Посмотреть профиль Найти все сообщения от hoax
 
Регистрация: 20.09.2012
Сообщений: 151

AJAX не видит параметр PHP
Сижу битый час не могу понять в чем проблема.

1 файл

<input name="text" type="text" />
<div onclick="go()" >Получить</div>


<div id="div">0</div>

<script>

function go() {

var xml = new XMLHttpRequest();

xml.onreadystatechange = function() {

if(xml.readyState == 4 && xml.status == 200) document.getElementById('div').innerHTML = xml.responseText;

}

xml.open("GET", "1.php", true);
xml.send();

}

</script>


Второй (1.php)

echo $_GET['text'];


Результат Notice: Undefined index: text
Ответить с цитированием
  #2 (permalink)  
Старый 09.01.2015, 16:19
Профессор
Отправить личное сообщение для hoax Посмотреть профиль Найти все сообщения от hoax
 
Регистрация: 20.09.2012
Сообщений: 151

Почему? Я же ввожу в форму данные, после чего запускаю функцию, без js, с использованием action='1.php' я получаю все, что нужно
Ответить с цитированием
  #3 (permalink)  
Старый 09.01.2015, 17:57
Профессор
Отправить личное сообщение для hoax Посмотреть профиль Найти все сообщения от hoax
 
Регистрация: 20.09.2012
Сообщений: 151

я имею в виду без AJAX :

<form method="POST" action="1.php">
<input name="text" type="text">
<input type="submit">
</form>

При переходе на 1.php, в которой такой код

echo $_POST['text'] = получаю данные формы, которые ввел на предыдущей странице
Ответить с цитированием
  #4 (permalink)  
Старый 09.01.2015, 19:08
Профессор
Отправить личное сообщение для hoax Посмотреть профиль Найти все сообщения от hoax
 
Регистрация: 20.09.2012
Сообщений: 151

я понимаю суть GET-запросов, однако мне нужно получить данные введение в форму и обработать их на стороне 1.php.

А для этого необходимо получить значение, введенное в <input>. Как мне это сделать, используя код выше?
Ответить с цитированием
  #5 (permalink)  
Старый 09.01.2015, 22:29
Профессор
Отправить личное сообщение для hoax Посмотреть профиль Найти все сообщения от hoax
 
Регистрация: 20.09.2012
Сообщений: 151

да это можно сделать, присвоив параметр странице, в этом случае второй файл его получает и может обработать, но только вопрос, что если идет передача POST запроса, и довольно объемного. Как быть в этом случае?
Ответить с цитированием
  #6 (permalink)  
Старый 09.01.2015, 22:40
Профессор
Отправить личное сообщение для hoax Посмотреть профиль Найти все сообщения от hoax
 
Регистрация: 20.09.2012
Сообщений: 151

все разобрался
Ответить с цитированием
  #7 (permalink)  
Старый 09.01.2015, 22:49
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

<form id="example" method="POST" action="1.php">
<input name="text" type="text">
<input type="submit">
</form>
<script>
var example = document.forms.example;
example.addEventListener('submit', function(e) {
    e.preventDefault(); // стоять бояться!
    // ... код xmlhttprequest
    xml.open('POST', '1.php');
    xml.send(new FormData(this)); // магия с использованием HTML5 FormData - все поля формы попадут в form data и будут отправлены xmlhttprequest'ом.
});
</script>
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Несколько запросов к php через AJAX Florens AJAX и COMET 7 25.07.2014 21:21
Живой поиск JQUERY + AJAX + PHP + MYSQL dimi007 AJAX и COMET 2 22.07.2014 13:50
Передать параметр при ajax rafaello AJAX и COMET 5 10.04.2014 11:25
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
php session а в ajax Sadist_dead AJAX и COMET 1 19.08.2011 18:35